package com.openlogic.datasource.api.dto;

import java.io.Serializable;
import java.util.Date;

import org.noear.solon.validation.annotation.NotBlank;

/**
* @ClassName: DataColumnDto
* @Description: 元数据信息表 实体DTO
* @author weiyongpeng
* @date 2024年11月22日 上午8:34:06
 */
public class DataColumnDto implements Serializable {

    private static final long serialVersionUID=1L;

    /**
     * 主键ID
     */
	@NotBlank(message = "主键ID不能为空"/* , groups = {V_E.class} */)
    private String id;
    
    /**
     * 所属数据源ID
     */
    private String sourceId;
    
    /**
     * 所属数据表
     */
    private String tableId;
    
    /**
     * 字段名称
     */
    private String columnName;
    
    /**
     * 字段注释 别名
     */
    private String columnComment;
    
    /**
     * 字段是否主键(1是0否)
     */
    private String columnKey;
    
    /**
     * 字段是否允许为空(1是0否)
     */
    private String columnNullable;
    
    /**
     * 字段序号
     */
    private String columnPosition;
    
    /**
     * 数据类型
     */
    private String dataType;
    
    /**
     * 数据长度
     */
    private String dataLength;
    
    /**
     * 数据精度
     */
    private String dataPrecision;
    
    /**
     * 数据小数位
     */
    private String dataScale;
    
    /**
     * 数据默认值
     */
    private String dataDefault;
    
	private String sourceName;

	private String tableName;

	private String tableComment;
	
	private Date createTime;
    
    private String createBy;

    private Date updateTime;
    
    private String updateBy;
    
	private String updateName;
	
	private String createName;
	
	/**
	 * 数据库名称
	 */
	private String database;
	/**
	 * 数据源类型
	 */
	private String dbType;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getSourceId() {
		return sourceId;
	}

	public void setSourceId(String sourceId) {
		this.sourceId = sourceId;
	}

	public String getTableId() {
		return tableId;
	}

	public void setTableId(String tableId) {
		this.tableId = tableId;
	}

	public String getColumnName() {
		return columnName;
	}

	public void setColumnName(String columnName) {
		this.columnName = columnName;
	}

	public String getColumnComment() {
		return columnComment;
	}

	public void setColumnComment(String columnComment) {
		this.columnComment = columnComment;
	}

	public String getColumnKey() {
		return columnKey;
	}

	public void setColumnKey(String columnKey) {
		this.columnKey = columnKey;
	}

	public String getColumnNullable() {
		return columnNullable;
	}

	public void setColumnNullable(String columnNullable) {
		this.columnNullable = columnNullable;
	}

	public String getColumnPosition() {
		return columnPosition;
	}

	public void setColumnPosition(String columnPosition) {
		this.columnPosition = columnPosition;
	}

	public String getDataType() {
		return dataType;
	}

	public void setDataType(String dataType) {
		this.dataType = dataType;
	}

	public String getDataLength() {
		return dataLength;
	}

	public void setDataLength(String dataLength) {
		this.dataLength = dataLength;
	}

	public String getDataPrecision() {
		return dataPrecision;
	}

	public void setDataPrecision(String dataPrecision) {
		this.dataPrecision = dataPrecision;
	}

	public String getDataScale() {
		return dataScale;
	}

	public void setDataScale(String dataScale) {
		this.dataScale = dataScale;
	}

	public String getDataDefault() {
		return dataDefault;
	}

	public void setDataDefault(String dataDefault) {
		this.dataDefault = dataDefault;
	}

	public String getSourceName() {
		return sourceName;
	}

	public void setSourceName(String sourceName) {
		this.sourceName = sourceName;
	}

	public String getTableName() {
		return tableName;
	}

	public void setTableName(String tableName) {
		this.tableName = tableName;
	}

	public String getTableComment() {
		return tableComment;
	}

	public void setTableComment(String tableComment) {
		this.tableComment = tableComment;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public String getCreateBy() {
		return createBy;
	}

	public void setCreateBy(String createBy) {
		this.createBy = createBy;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public String getUpdateBy() {
		return updateBy;
	}

	public void setUpdateBy(String updateBy) {
		this.updateBy = updateBy;
	}

	public String getUpdateName() {
		return updateName;
	}

	public void setUpdateName(String updateName) {
		this.updateName = updateName;
	}

	public String getCreateName() {
		return createName;
	}

	public void setCreateName(String createName) {
		this.createName = createName;
	}

	public String getDatabase() {
		return database;
	}

	public void setDatabase(String database) {
		this.database = database;
	}

	public String getDbType() {
		return dbType;
	}

	public void setDbType(String dbType) {
		this.dbType = dbType;
	}
	
}